This specification relates to digital information retrieval services.
It is not always easy for users of a search engine to come up with the best query in order to fulfill their information needs. Sometimes they use an ambiguous wording that brings up documents about other senses of the terms used, or they fail to add relevant terms to the query. In order to help in this task, some search services provide query suggestion services that help users reformulate queries to better describe their information needs and reduce the time needed to find information that satisfies their needs. Search services provide search query suggestions as alternatives to search queries input by the users. For example, a search engine can provide a resource that includes a query input field that receives an input search query. In response to receiving search query terms input in the query input field, a search service can provide to the user search query suggestions for the input search query terms. A user can select a search query suggestion for use as a search query.
Additionally, a similar problem may happen with other scenarios where users need to enter query-like text, such as keywords. For example, advertisers provide keywords that have to match user queries for their advertisements to be displayed. Query suggestion systems can also help advertisers by suggesting keywords that are related to the keywords they have entered.
When search services have high confidence that the results shown in response to a user's search query can be improved by extending or replacing the user's search query with a related search query, it is possible to do this replacement automatically with a suggested query, invisible to the user, and directly show the results corresponding to this suggested query, or a combination of the results for the original user search query and the suggested queries. Similarly, advertiser keywords can be automatically extended with synonyms, in order to increase the set of user queries that match an advertiser campaign. These processes are commonly known as “query expansion” and “expanded broad match”, respectively.